#pragma once
#include "../Utilities/utilities.h"
#include "StateManager.h"
class Game
{
private:
	bool isPause;
	bool isActive;
	StateManager* stateManager;

	Game();
	Game(ESContext*);
	static Game* instance;
	static void FakeRun(ESContext *esContext);
public:
	~Game();
	ESContext* esContext;
	static Game* GetInstance(ESContext*);
	static void Key(ESContext *esContext, unsigned char key, bool bIsPressed);
	static void Run(ESContext *esContext, float deltaTime);
	static void Mouse(ESContext* esContext, MouseData mouse, bool bIsDown);
	void AddState(State* newState);
	
	int CreateGame();
	void StartGame();
	void Pause();
	void Resume();
};

